package be;

import util.JSONException;
import util.JSONObject;

/**
 *
 * @author Dikas
 */
public class VisitaProgramada {
    
    private int id_contraste;
    private String zona_abrev;    
    private String tipo_contraste;
    private String reporte;
    private String cliente_nombre;
    private String medidor_suministro;
    private String medidor_tipo;
    private String medidor_serie;
    private String medidor_ano;
    private String apreciacion;
    private String lectura;
    private String voltaje;
    private String precinto;
    private String pruebaVacio;
    private String comentario;
    private String prueba5;
    private String prueba10;
    private String prueba100;
    private String pruebaimax;
    private double longitud;
    private double latitud;
    private String cliente_direccion;
    private boolean estado;

    public VisitaProgramada() {
    }

    public VisitaProgramada(int id_contraste, String zona_abrev, String tipo_contraste, String reporte, String cliente, String medidor_suministro, String medidor_tipo, String medidor_serie, String medidor_ano, String apreciacion, String lectura, String voltaje, String precinto, String pruebaVacio, String comentario, String prueba5, String prueba10, String prueba100, String pruebaimax, double longitud, double latitud, String cliente_direccion, boolean estado) {
        this.id_contraste = id_contraste;
        this.zona_abrev = zona_abrev;
        this.tipo_contraste = tipo_contraste;
        this.reporte = reporte;
        this.cliente_nombre = cliente;
        this.medidor_suministro = medidor_suministro;
        this.medidor_tipo = medidor_tipo;
        this.medidor_serie = medidor_serie;
        this.medidor_ano = medidor_ano;
        this.apreciacion = apreciacion;
        this.lectura = lectura;
        this.voltaje = voltaje;
        this.precinto = precinto;
        this.pruebaVacio = pruebaVacio;
        this.comentario = comentario;
        this.prueba5 = prueba5;
        this.prueba10 = prueba10;
        this.prueba100 = prueba100;
        this.pruebaimax = pruebaimax;
        this.longitud = longitud;
        this.latitud = latitud;
        this.cliente_direccion =cliente_direccion;
        this.estado = estado;
    }

    public String getCliente_direccion() {
        return cliente_direccion;
    }

    public void setCliente_direccion(String cliente_direccion) {
        this.cliente_direccion = cliente_direccion;
    }
    
    public String getApreciacion() {
        return apreciacion;
    }

    public void setApreciacion(String apreciacion) {
        this.apreciacion = apreciacion;
    }

    public String getCliente() {
        return cliente_nombre;
    }

    public void setCliente(String cliente) {
        this.cliente_nombre = cliente;
    }

    public String getComentario() {
        return comentario;
    }

    public void setComentario(String comentario) {
        this.comentario = comentario;
    }

    public boolean isEstado() {
        return estado;
    }

    public void setEstado(boolean estado) {
        this.estado = estado;
    }

    public int getId_contraste() {
        return id_contraste;
    }

    public void setId_contraste(int id_contraste) {
        this.id_contraste = id_contraste;
    }

    public String getLectura() {
        return lectura;
    }

    public void setLectura(String lectura) {
        this.lectura = lectura;
    }

    public String getMedidor_ano() {
        return medidor_ano;
    }

    public void setMedidor_ano(String medidor_ano) {
        this.medidor_ano = medidor_ano;
    }

    public String getMedidor_serie() {
        return medidor_serie;
    }

    public void setMedidor_serie(String medidor_serie) {
        this.medidor_serie = medidor_serie;
    }

    public String getMedidor_suministro() {
        return medidor_suministro;
    }

    public void setMedidor_suministro(String medidor_suministro) {
        this.medidor_suministro = medidor_suministro;
    }

    public String getMedidor_tipo() {
        return medidor_tipo;
    }

    public void setMedidor_tipo(String medidor_tipo) {
        this.medidor_tipo = medidor_tipo;
    }

    public String getPrecinto() {
        return precinto;
    }

    public void setPrecinto(String precinto) {
        this.precinto = precinto;
    }

    public String getPrueba10() {
        return prueba10;
    }

    public void setPrueba10(String prueba10) {
        this.prueba10 = prueba10;
    }

    public String getPrueba100() {
        return prueba100;
    }

    public void setPrueba100(String prueba100) {
        this.prueba100 = prueba100;
    }

    public String getPrueba5() {
        return prueba5;
    }

    public void setPrueba5(String prueba5) {
        this.prueba5 = prueba5;
    }

    public String getPruebaVacio() {
        return pruebaVacio;
    }

    public void setPruebaVacio(String pruebaVacio) {
        this.pruebaVacio = pruebaVacio;
    }

    public String getPruebaimax() {
        return pruebaimax;
    }

    public void setPruebaimax(String pruebaimax) {
        this.pruebaimax = pruebaimax;
    }

    public String getReporte() {
        return reporte;
    }

    public void setReporte(String reporte) {
        this.reporte = reporte;
    }

    public String getTipo_contraste() {
        return tipo_contraste;
    }

    public void setTipo_contraste(String tipo_contraste) {
        this.tipo_contraste = tipo_contraste;
    }

    public String getVoltaje() {
        return voltaje;
    }

    public void setVoltaje(String voltaje) {
        this.voltaje = voltaje;
    }

    public String getZona_abrev() {
        return zona_abrev;
    }

    public void setZona_abrev(String zona_abrev) {
        this.zona_abrev = zona_abrev;
    }

    public double getLatitud() {
        return latitud;
    }

    public void setLatitud(double latitud) {
        this.latitud = latitud;
    }

    public double getLongitud() {
        return longitud;
    }

    public void setLongitud(double longitud) {
        this.longitud = longitud;
    }
    
    public String toJson(){
        JSONObject inner = new JSONObject();        
        try {            
            inner.put("id_contraste", getId_contraste());
            inner.put("apreciacion",getApreciacion());
            inner.put("zona_abrev", getZona_abrev());
            inner.put("tipo_contraste", getTipo_contraste());
            inner.put("reporte", getReporte());
            inner.put("cliente", getCliente());
            inner.put("medidor_suministro", getMedidor_suministro());
            inner.put("medidor_tipo", getMedidor_tipo());
            inner.put("medidor_serie", getMedidor_serie());
            inner.put("medidor_ano", getMedidor_ano());
            inner.put("lectura", getLectura());
            inner.put("voltaje", getVoltaje());
            inner.put("precinto", getPrecinto());
            inner.put("pruebaVacio", getPruebaVacio());
            inner.put("comentario", getComentario());
            inner.put("prueba5", getPrueba5());
            inner.put("prueba10", getPrueba10());
            inner.put("prueba100", getPrueba100());
            inner.put("pruebaimax", getPruebaimax());
            inner.put("latitud", getLatitud());
            inner.put("longitud", getLongitud());
            inner.put("cliente_direccion",getCliente_direccion());
            inner.put("estado", isEstado());
        } catch (JSONException ex) {
            System.out.println("Error: "+ex.getMessage());
            ex.printStackTrace();
        }        
        return inner.toString();    
    }

    public void toObject(String json) {
        try {
            JSONObject obj = new JSONObject(json);
            setId_contraste(obj.getInt("id_contraste"));            
            setApreciacion(obj.getString("apreciacion"));
            setCliente(obj.getString("cliente"));
            setComentario(obj.getString("comentario"));
            setEstado(obj.getBoolean("estado"));
            setLectura(obj.getString("lectura"));
            setMedidor_ano(obj.getString("medidor_ano"));
            setMedidor_serie(obj.getString("medidor_serie"));
            setMedidor_suministro(obj.getString("medidor_suministro"));
            setMedidor_tipo(obj.getString("medidor_tipo"));
            setPrecinto(obj.getString("precinto"));
            setPrueba10(obj.getString("prueba10"));
            setPrueba100(obj.getString("prueba100"));
            setPrueba5(obj.getString("prueba5"));
            setPruebaVacio(obj.getString("pruebaVacio"));
            setPruebaimax(obj.getString("pruebaimax"));
            setReporte(obj.getString("reporte"));
            setTipo_contraste(obj.getString("tipo_contraste"));
            setVoltaje(obj.getString("voltaje"));
            setZona_abrev(obj.getString("zona_abrev"));            
            setLatitud(obj.getDouble("latitud"));
            setLongitud(obj.getDouble("longitud"));
            setCliente_direccion(obj.getString("cliente_direccion"));
            //System.out.println("Vista:\n"+toString());
        } catch (Exception e) {
            System.out.println("Error: " + e.getMessage());
            e.printStackTrace();
        }
    }

    public String toString() {
        return "VisitaProgramada{" + "id_contraste=" + id_contraste + ", zona_abrev=" + zona_abrev + ", tipo_contraste=" + tipo_contraste + ", reporte=" + reporte + ", cliente_nombre=" + cliente_nombre + ", medidor_suministro=" + medidor_suministro + ", medidor_tipo=" + medidor_tipo + ", medidor_serie=" + medidor_serie + ", medidor_ano=" + medidor_ano + ", apreciacion=" + apreciacion + ", lectura=" + lectura + ", voltaje=" + voltaje + ", precinto=" + precinto + ", pruebaVacio=" + pruebaVacio + ", comentario=" + comentario + ", prueba5=" + prueba5 + ", prueba10=" + prueba10 + ", prueba100=" + prueba100 + ", pruebaimax=" + pruebaimax + ", longitud=" + longitud + ", latitud=" + latitud + ", cliente_direccion=" + cliente_direccion + ", estado=" + estado + '}';
    }
    
    
}
